<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

<script>
// Object静态方法

// Object.getOwnPropertySymbols(obj)返回obj对象的所有Symbol属性名
// let obj = {
//     name: '小王',
//     [Symbol('age')]: 21,
//     [Symbol('sex')]: '女'
// }
// let arr = Object.getOwnPropertySymbols(obj);
// console.log( arr );// [Symbol(age), Symbol(sex)]
// console.log( obj[arr[0]] );// 21
// console.log( obj[arr[1]] );// '女'


// Object.keys()返回对象所有可以枚举属性(ES5)
// Object.values()返回对象所有可以枚举属性的值(ES6)
// Object.entries()返回对象所有可枚举的键值对(ES6)
// let obj1 = {
//     a: 1,
//     b: 2,
//     c: 3
// }
// console.log( Object.keys(obj1) );// ['a','b','c']
// console.log( Object.values(obj1) );// [1,2,3]
// console.log( Object.entries(obj1) );// [['a',1],['b',2],['c',3]]

// Object.is(n1,n2)比较n1和n2是否全等/严格等于
// console.log( +0 === -0 );// true
// console.log( NaN === NaN );// false
// console.log( Object.is(+0,-0) );// false
// console.log( Object.is(NaN,NaN) );// true


// Object.assign(obj,source1,source2...)将source1,source2...对象的属性拷贝到obj上
let obj1 = {
    a:1
}
let obj2 = {
    b:2,
    c: 3
}
let obj3 = {
    arr: [4,5,6]
}
Object.assign(obj1,obj2,obj3);// 将obj2和obj3的属性拷贝到obj1上（浅拷贝）
obj3.arr.push(7);
console.log( obj1 );// {a: 1, b: 2, c: 3, arr: [4,5,6,7]}

</script>
</body>
</html>